/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *如果数据库字段发生变化，请在代码生器重新生成此Model
 */
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using SqlSugar;
using DGZImp.SysEntity;

namespace DGZImp.BasProject.DomainModels
{
    [Entity(TableCnName = "客户管理", TableName = "Bas_Customer", DBServer = "ServiceDbContext")]
    public partial class Bas_Customer : ServiceEntity
    {
        /// <summary>
        ///客户ID
        /// </summary>
        [SugarColumn(IsPrimaryKey = true)]
        [Key]
        [Display(Name = "客户ID")]
        [Column(TypeName = "bigint")]
        [Required(AllowEmptyStrings = false)]
        public long CustomerId { get; set; }

        /// <summary>
        ///客户编码
        /// </summary>
        [Display(Name = "客户编码")]
        [MaxLength(50)]
        [Column(TypeName = "nvarchar(50)")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public string CustomerCode { get; set; }

        /// <summary>
        ///客户简称
        /// </summary>
        [Display(Name = "客户简称")]
        [MaxLength(100)]
        [Column(TypeName = "nvarchar(100)")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public string CustomerName { get; set; }

        /// <summary>
        ///客户全程
        /// </summary>
        [Display(Name = "客户全程")]
        [MaxLength(255)]
        [Column(TypeName = "nvarchar(255)")]
        [Editable(true)]
        public string CustomerFullName { get; set; }

        /// <summary>
        ///客户类型
        /// </summary>
        [Display(Name = "客户类型")]
        [MaxLength(50)]
        [Column(TypeName = "nvarchar(50)")]
        [Editable(true)]
        public string CustomerType { get; set; }

        /// <summary>
        ///联系人
        /// </summary>
        [Display(Name = "联系人")]
        [MaxLength(100)]
        [Column(TypeName = "nvarchar(100)")]
        [Editable(true)]
        public string ContactName { get; set; }

        /// <summary>
        ///联系电话
        /// </summary>
        [Display(Name = "联系电话")]
        [MaxLength(20)]
        [Column(TypeName = "nvarchar(20)")]
        [Editable(true)]
        public string TelNo { get; set; }

        /// <summary>
        ///电子邮件
        /// </summary>
        [Display(Name = "电子邮件")]
        [MaxLength(100)]
        [Column(TypeName = "nvarchar(100)")]
        [Editable(true)]
        public string Email { get; set; }

        /// <summary>
        ///负责人
        /// </summary>
        [Display(Name = "负责人")]
        [MaxLength(100)]
        [Column(TypeName = "nvarchar(100)")]
        [Editable(true)]
        public string Principal { get; set; }

        /// <summary>
        ///传真
        /// </summary>
        [Display(Name = "传真")]
        [MaxLength(100)]
        [Column(TypeName = "nvarchar(100)")]
        [Editable(true)]
        public string FaxNo { get; set; }

        /// <summary>
        ///销售负责人
        /// </summary>
        [Display(Name = "销售负责人")]
        [MaxLength(100)]
        [Column(TypeName = "nvarchar(100)")]
        [Editable(true)]
        public string SalesOwner { get; set; }

        /// <summary>
        ///所属国家
        /// </summary>
        [Display(Name = "所属国家")]
        [MaxLength(100)]
        [Column(TypeName = "nvarchar(100)")]
        [Editable(true)]
        public string Country { get; set; }

        /// <summary>
        ///所属地区
        /// </summary>
        [Display(Name = "所属地区")]
        [MaxLength(100)]
        [Column(TypeName = "nvarchar(100)")]
        [Editable(true)]
        public string Area { get; set; }

        /// <summary>
        ///省
        /// </summary>
        [Display(Name = "省")]
        [MaxLength(128)]
        [Column(TypeName = "nvarchar(128)")]
        [Editable(true)]
        public string Province { get; set; }

        /// <summary>
        ///市
        /// </summary>
        [Display(Name = "市")]
        [MaxLength(128)]
        [Column(TypeName = "nvarchar(128)")]
        [Editable(true)]
        public string City { get; set; }

        /// <summary>
        ///中文联系地址
        /// </summary>
        [Display(Name = "中文联系地址")]
        [MaxLength(1000)]
        [Column(TypeName = "nvarchar(1000)")]
        [Editable(true)]
        public string DetailAddress { get; set; }

        /// <summary>
        ///英文联系地址
        /// </summary>
        [Display(Name = "英文联系地址")]
        [MaxLength(1000)]
        [Column(TypeName = "nvarchar(1000)")]
        [Editable(true)]
        public string DetailAddressEN { get; set; }

        /// <summary>
        ///是否有效
        /// </summary>
        [Display(Name = "是否有效")]
        [Column(TypeName = "int")]
        [Required(AllowEmptyStrings = false)]
        public int IsValid { get; set; }

        /// <summary>
        ///创建用户
        /// </summary>
        [Display(Name = "创建用户")]
        [Column(TypeName = "bigint")]
        public long? CreateId { get; set; }

        /// <summary>
        ///创建人
        /// </summary>
        [Display(Name = "创建人")]
        [MaxLength(50)]
        [Column(TypeName = "nvarchar(50)")]
        public string Creator { get; set; }

        /// <summary>
        ///创建时间
        /// </summary>
        [Display(Name = "创建时间")]
        [Column(TypeName = "datetime")]
        public DateTime? CreateTime { get; set; }

        /// <summary>
        ///修改用户
        /// </summary>
        [Display(Name = "修改用户")]
        [Column(TypeName = "bigint")]
        public long? ModifyId { get; set; }

        /// <summary>
        ///修改人
        /// </summary>
        [Display(Name = "修改人")]
        [MaxLength(30)]
        [Column(TypeName = "nvarchar(30)")]
        public string Modifier { get; set; }

        /// <summary>
        ///修改时间
        /// </summary>
        [Display(Name = "修改时间")]
        [Column(TypeName = "datetime")]
        public DateTime? ModifyTime { get; set; }

        /// <summary>
        ///备注
        /// </summary>
        [Display(Name = "备注")]
        [MaxLength(512)]
        [Column(TypeName = "nvarchar(512)")]
        [Editable(true)]
        public string Remarks { get; set; }

        /// <summary>
        ///是否启用
        /// </summary>
        [Display(Name = "是否启用")]
        [Column(TypeName = "int")]
        [Editable(true)]
        public int? Enabled { get; set; }
    }
}